<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
</head>

<body></body>
<script>

    // var iterator = {
    //     i:0,
    //     next(){
    //         return {
    //             value:arr[this.i++],
    //             done:this.i>=arr.length
    //         }
    //     }
    // }
    // var arr1 = [1, 2, 3, 4, 5];
    // var arr2 = [5, 6, 7, 8, 9];
    // function createIterator(arr) {
    //     var i = 0;
    //     return {
    //         next() {
    //             var result = {
    //                 value: arr[i],
    //                 done: i >= arr.length,
    //             };
    //             i++
    //             return result
    //         },
    //     };
    // }
    // var iter1 = createIterator(arr1)
    // var iter2 = createIterator(arr2)

    // var data = iter1.next()
    // while(!data.done){
    //     console.log(data.value)
    //     data = iter1.next()
    // }

    // function createFeiboIterator(){
    //     var pre1=1,pre2=1,
    //     n=1

    //     return {
    //         next(){
    //             var value
    //             if(n<=2){
    //                 value = 1
    //             }else{
    //                 value = pre1+pre2
    //             }
    //             var result = {
    //                 value,
    //                 done:false
    //             }
    //             pre2 = pre1;
    //             pre1 = result.value
    //             n++
    //             return result
    //         }
    //     }


    // }


    // var iterator = {

    //     [Symbol.iterator]() {
    //         let arr = [2, 3, 4, 5, 6]
    //         let i = 0
    //         return {
    //             next(){
    //                 var result = {
    //                     value:arr[i],
    //                     done:arr.length>=i
    //                 }
    //                 i++
    //                 return result
    //             }
    //         }
    //     }
    // }

            var obj = {
            [Symbol.iterator]() {
                return {
                    arr:[2,3,4,5,6],
                    i:0,
                    next(){
                        var result = {
                            value:this.arr[this.i],
                            done:this.arr.length<=this.i
                        }
                        this.i++
                        return result
                    }
                }
            }
        }
        console.log([...obj])


        
    // for (const element of obj) {
    //     console.log(element)
    // }
    // var arr = [1, 2, 3, 4, 5]
    // for (const element of arr) {
    //     console.log(element)
    // }

</script>
 
</html>